﻿Imports System.Data
Imports System.Data.SqlClient
Imports Sistema_InformacionNaviera.BE
Imports Sistema_InformacionNavier.UTIL


Public Class EntidadesDALC

    Public Function ListaEntidades(ByVal objEntidadesBE As EntidadesBE) As List(Of EntidadesBE)

        Dim sqlListar As String
        Dim objListaEntidades As New List(Of EntidadesBE)
        Dim objPtoBE As EntidadesBE = Nothing
        Dim arrSqlParameter(2) As SqlParameter
        Dim ds As DataSet
        Dim dt As DataTable

        Dim blnExito As Boolean
        Dim strMensaje As String = String.Empty

        Dim objDatos As New AccesoDatos()
        Dim intI As Integer = 0

        Try

            sqlListar = "up_Listado_Entidades" '"up_ListaGral" '"up_Listado_Entidades"

            arrSqlParameter(0) = New SqlParameter("@TIPO", System.Data.SqlDbType.VarChar)
            arrSqlParameter(0).Value = objEntidadesBE.Tipo

            arrSqlParameter(1) = New SqlParameter("@CODIGO", System.Data.SqlDbType.VarChar)
            arrSqlParameter(1).Value = objEntidadesBE.Codigo

            arrSqlParameter(2) = New SqlParameter("@DESCRIPCION", System.Data.SqlDbType.VarChar)
            arrSqlParameter(2).Value = objEntidadesBE.Descripcion

            ds = objDatos.DevuelveDataSet(sqlListar, blnExito, strMensaje, arrSqlParameter)
            dt = ds.Tables(0)


            objListaEntidades = New List(Of EntidadesBE)()

            If dt.Rows.Count > 0 Then

                While intI < dt.Rows.Count
                    objPtoBE = New EntidadesBE()
                    objPtoBE.Codigo = dt.Rows(intI).ItemArray(0).ToString
                    objPtoBE.Descripcion = dt.Rows(intI).ItemArray(1).ToString

                    intI = intI + 1

                    objListaEntidades.Add(objPtoBE)
                End While
            End If


        Catch ex As Exception
            MsgBox(ex.Message, vbCritical, "Error del sistema")
            Return Nothing
            Exit Function
        End Try

        Return objListaEntidades
    End Function


    Public Function ListaAdministrarEntidades(ByVal objEntidadesBE As EntidadesBE) As List(Of EntidadesBE)

        Dim sqlListar As String
        Dim objListaCliente As New List(Of EntidadesBE)
        Dim objCliBE As EntidadesBE = Nothing
        Dim arrSqlParameter(2) As SqlParameter
        Dim ds As DataSet
        Dim dt As DataTable

        Dim objDatos As New AccesoDatos()
        Dim blnExito As Boolean
        Dim strMensaje As String = String.Empty
        Dim intI As Integer = 0

        Try

            sqlListar = "up_Entidades_ListaCliente"

            arrSqlParameter(0) = New SqlParameter("@Kent", System.Data.SqlDbType.VarChar)
            arrSqlParameter(0).Value = objEntidadesBE.Codigo
            objListaCliente = New List(Of EntidadesBE)()

            arrSqlParameter(1) = New SqlParameter("@Tdoc", System.Data.SqlDbType.VarChar)
            arrSqlParameter(1).Value = objEntidadesBE.TDocu
            objListaCliente = New List(Of EntidadesBE)()

            arrSqlParameter(2) = New SqlParameter("@Ndoc", System.Data.SqlDbType.VarChar)
            arrSqlParameter(2).Value = objEntidadesBE.NDocu
            objListaCliente = New List(Of EntidadesBE)()

            ds = objDatos.DevuelveDataSet(sqlListar, blnExito, strMensaje, arrSqlParameter)
            dt = ds.Tables(0)

            If dt.Rows.Count > 0 Then

                While intI < dt.Rows.Count
                    objCliBE = New EntidadesBE()
                    objCliBE.Codigo = dt.Rows(intI).ItemArray(0).ToString
                    objCliBE.CodOsc = dt.Rows(intI).ItemArray(1).ToString
                    objCliBE.TDocu = dt.Rows(intI).ItemArray(2).ToString
                    objCliBE.NDocu = dt.Rows(intI).ItemArray(3).ToString
                    objCliBE.Descripcion = dt.Rows(intI).ItemArray(4).ToString
                    objCliBE.Tipo = dt.Rows(intI).ItemArray(5).ToString
                    objCliBE.MovImpDesc = dt.Rows(intI).ItemArray(6).ToString
                    objCliBE.MovExpDesc = dt.Rows(intI).ItemArray(7).ToString
                    intI = intI + 1

                    objListaCliente.Add(objCliBE)
                End While
            End If
        Catch ex As Exception
            MsgBox(ex.Message, vbCritical, "Error del sistema")
            Return Nothing
            Exit Function
        End Try

        Return objListaCliente
    End Function

    Public Function ValidarEntidad(ByVal objEntidadBE As EntidadesBE) As Boolean


        Dim arrSqlParameter(4) As SqlParameter
        Dim ds As DataSet
        Dim dt As DataTable

        Dim sqlListar As String
        Dim objDatos As New AccesoDatos()
        Dim blnExito As Boolean
        Dim bResultado As Boolean
        Dim strMensaje As String = String.Empty
        Dim intI As Integer = 0

        Try
            sqlListar = "up_Entidades_Validar"

            arrSqlParameter(0) = New SqlParameter()
            arrSqlParameter(0).ParameterName = "@KENT"
            arrSqlParameter(0).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(0).Direction = ParameterDirection.Input
            arrSqlParameter(0).Value = objEntidadBE.Codigo

            arrSqlParameter(1) = New SqlParameter()
            arrSqlParameter(1).ParameterName = "@RSOC"
            arrSqlParameter(1).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(1).Direction = ParameterDirection.Output
            arrSqlParameter(1).Value = objEntidadBE.Descripcion

            arrSqlParameter(2) = New SqlParameter()
            arrSqlParameter(2).ParameterName = "@TDOC"
            arrSqlParameter(2).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(2).Direction = ParameterDirection.Output
            arrSqlParameter(2).Value = objEntidadBE.TDocu

            arrSqlParameter(3) = New SqlParameter()
            arrSqlParameter(3).ParameterName = "@NRUC"
            arrSqlParameter(3).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(3).Direction = ParameterDirection.Output
            arrSqlParameter(3).Value = objEntidadBE.NDocu

            arrSqlParameter(4) = New SqlParameter()
            arrSqlParameter(4).ParameterName = "@TVAL"
            arrSqlParameter(4).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(4).Direction = ParameterDirection.Output
            arrSqlParameter(4).Value = objEntidadBE.TVal

            ds = objDatos.DevuelveDataSet(sqlListar, blnExito, strMensaje, arrSqlParameter)
            dt = ds.Tables(0)
            bResultado = False
            If blnExito Then
                If dt.Rows.Count > 0 Then
                    If dt.Rows(0).ItemArray(0).ToString.Trim = "" Then
                        bResultado = False
                    Else
                        bResultado = True
                    End If
                End If
            Else
                bResultado = False
            End If

            Return bResultado

        Catch ex As Exception
            Throw
        End Try

    End Function

    Public Function InsertarEntidades(ByVal objEntidadesBE As EntidadesBE, ByRef bExito As Boolean, ByRef sMensaje As String) As Boolean

        Dim arrSqlParameter(28) As SqlParameter

        Try

            arrSqlParameter(0) = New SqlParameter()
            arrSqlParameter(0).ParameterName = "@KENT"
            arrSqlParameter(0).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(0).Value = objEntidadesBE.Codigo

            arrSqlParameter(1) = New SqlParameter()
            arrSqlParameter(1).ParameterName = "@RSOC"
            arrSqlParameter(1).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(1).Value = objEntidadesBE.Descripcion

            arrSqlParameter(2) = New SqlParameter()
            arrSqlParameter(2).ParameterName = "@NOMC"
            arrSqlParameter(2).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(2).Value = objEntidadesBE.NomCom

            arrSqlParameter(3) = New SqlParameter()
            arrSqlParameter(3).ParameterName = "@TDOC"
            arrSqlParameter(3).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(3).Value = objEntidadesBE.TDocu

            arrSqlParameter(4) = New SqlParameter()
            arrSqlParameter(4).ParameterName = "@NRUC"
            arrSqlParameter(4).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(4).Value = objEntidadesBE.NDocu

            arrSqlParameter(5) = New SqlParameter()
            arrSqlParameter(5).ParameterName = "@FANV"
            arrSqlParameter(5).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(5).Value = objEntidadesBE.FecAni

            arrSqlParameter(6) = New SqlParameter()
            arrSqlParameter(6).ParameterName = "@EXTR"
            arrSqlParameter(6).SqlDbType = SqlDbType.Int
            arrSqlParameter(6).Value = objEntidadesBE.Extranjero

            arrSqlParameter(7) = New SqlParameter()
            arrSqlParameter(7).ParameterName = "@CLIE"
            arrSqlParameter(7).SqlDbType = SqlDbType.Int
            arrSqlParameter(7).Value = objEntidadesBE.Cliente

            arrSqlParameter(8) = New SqlParameter()
            arrSqlParameter(8).ParameterName = "@VIGE"
            arrSqlParameter(8).SqlDbType = SqlDbType.Int
            arrSqlParameter(8).Value = objEntidadesBE.Estado

            arrSqlParameter(9) = New SqlParameter()
            arrSqlParameter(9).ParameterName = "@OBSE"
            arrSqlParameter(9).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(9).Value = objEntidadesBE.Observacion

            arrSqlParameter(10) = New SqlParameter()
            arrSqlParameter(10).ParameterName = "@TCLI"
            arrSqlParameter(10).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(10).Value = objEntidadesBE.TipCliente

            arrSqlParameter(11) = New SqlParameter()
            arrSqlParameter(11).ParameterName = "@ACTI"
            arrSqlParameter(11).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(11).Value = objEntidadesBE.Actividad

            arrSqlParameter(12) = New SqlParameter()
            arrSqlParameter(12).ParameterName = "@EImp"
            arrSqlParameter(12).SqlDbType = SqlDbType.Int
            arrSqlParameter(12).Value = objEntidadesBE.MovImp

            arrSqlParameter(13) = New SqlParameter()
            arrSqlParameter(13).ParameterName = "@EExp"
            arrSqlParameter(13).SqlDbType = SqlDbType.Int
            arrSqlParameter(13).Value = objEntidadesBE.MovExp

            arrSqlParameter(14) = New SqlParameter()
            arrSqlParameter(14).ParameterName = "@UCOMI"
            arrSqlParameter(14).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(14).Value = objEntidadesBE.UEjeComercialI

            arrSqlParameter(15) = New SqlParameter()
            arrSqlParameter(15).ParameterName = "@UCUSI"
            arrSqlParameter(15).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(15).Value = objEntidadesBE.UCusComercialI

            arrSqlParameter(16) = New SqlParameter()
            arrSqlParameter(16).ParameterName = "@UCOME"
            arrSqlParameter(16).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(16).Value = objEntidadesBE.UEjeComercialE

            arrSqlParameter(17) = New SqlParameter()
            arrSqlParameter(17).ParameterName = "@UCUSE"
            arrSqlParameter(17).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(17).Value = objEntidadesBE.UCusComercialE

            arrSqlParameter(18) = New SqlParameter()
            arrSqlParameter(18).ParameterName = "@OFPR"
            arrSqlParameter(18).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(18).Value = objEntidadesBE.Direccion

            arrSqlParameter(19) = New SqlParameter()
            arrSqlParameter(19).ParameterName = "@PAIS"
            arrSqlParameter(19).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(19).Value = objEntidadesBE.Pais

            arrSqlParameter(20) = New SqlParameter()
            arrSqlParameter(20).ParameterName = "@DPTO"
            arrSqlParameter(20).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(20).Value = objEntidadesBE.Dpto

            arrSqlParameter(21) = New SqlParameter()
            arrSqlParameter(21).ParameterName = "@PROV"
            arrSqlParameter(21).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(21).Value = objEntidadesBE.Prov

            arrSqlParameter(22) = New SqlParameter()
            arrSqlParameter(22).ParameterName = "@TELF"
            arrSqlParameter(22).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(22).Value = objEntidadesBE.Telf

            arrSqlParameter(23) = New SqlParameter()
            arrSqlParameter(23).ParameterName = "@TFAX"
            arrSqlParameter(23).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(23).Value = objEntidadesBE.Fax

            arrSqlParameter(24) = New SqlParameter()
            arrSqlParameter(24).ParameterName = "@DFIS"
            arrSqlParameter(24).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(24).Value = objEntidadesBE.DFiscal

            arrSqlParameter(25) = New SqlParameter()
            arrSqlParameter(25).ParameterName = "@FIAC"
            arrSqlParameter(25).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(25).Value = objEntidadesBE.FIniActividad

            arrSqlParameter(26) = New SqlParameter()
            arrSqlParameter(26).ParameterName = "@CDOM"
            arrSqlParameter(26).SqlDbType = SqlDbType.Int
            arrSqlParameter(26).Value = objEntidadesBE.CondicioFiscal

            arrSqlParameter(27) = New SqlParameter()
            arrSqlParameter(27).ParameterName = "@PERS"
            arrSqlParameter(27).SqlDbType = SqlDbType.Int
            arrSqlParameter(27).Value = objEntidadesBE.Persona

            arrSqlParameter(28) = New SqlParameter()
            arrSqlParameter(28).ParameterName = "@USU"
            arrSqlParameter(28).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(28).Value = objEntidadesBE.Usuario

            Dim oDatos As New AccesoDatos()

            oDatos.EjecutaSP("up_Entidades_Insertar", bExito, sMensaje, arrSqlParameter)

            Return bExito

        Catch ex As Exception
            MsgBox(ex.Message, vbCritical, "Error del sistema")
            Return False
            Exit Function
        End Try

    End Function

    Public Function EditarEntidades(ByVal objEntidadesBE As EntidadesBE, ByRef bExito As Boolean, ByRef sMensaje As String) As Boolean

        Dim arrSqlParameter(26) As SqlParameter

        Try

            arrSqlParameter(0) = New SqlParameter()
            arrSqlParameter(0).ParameterName = "@KENT"
            arrSqlParameter(0).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(0).Value = objEntidadesBE.Codigo

            arrSqlParameter(1) = New SqlParameter()
            arrSqlParameter(1).ParameterName = "@RSOC"
            arrSqlParameter(1).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(1).Value = objEntidadesBE.Descripcion

            arrSqlParameter(2) = New SqlParameter()
            arrSqlParameter(2).ParameterName = "@NOMC"
            arrSqlParameter(2).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(2).Value = objEntidadesBE.NomCom

            arrSqlParameter(3) = New SqlParameter()
            arrSqlParameter(3).ParameterName = "@FANV"
            arrSqlParameter(3).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(3).Value = objEntidadesBE.FecAni

            arrSqlParameter(4) = New SqlParameter()
            arrSqlParameter(4).ParameterName = "@EXTR"
            arrSqlParameter(4).SqlDbType = SqlDbType.Int
            arrSqlParameter(4).Value = objEntidadesBE.Extranjero

            arrSqlParameter(5) = New SqlParameter()
            arrSqlParameter(5).ParameterName = "@CLIE"
            arrSqlParameter(5).SqlDbType = SqlDbType.Int
            arrSqlParameter(5).Value = objEntidadesBE.Cliente

            arrSqlParameter(6) = New SqlParameter()
            arrSqlParameter(6).ParameterName = "@VIGE"
            arrSqlParameter(6).SqlDbType = SqlDbType.Int
            arrSqlParameter(6).Value = objEntidadesBE.Estado

            arrSqlParameter(7) = New SqlParameter()
            arrSqlParameter(7).ParameterName = "@OBSE"
            arrSqlParameter(7).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(7).Value = objEntidadesBE.Observacion

            arrSqlParameter(8) = New SqlParameter()
            arrSqlParameter(8).ParameterName = "@TCLI"
            arrSqlParameter(8).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(8).Value = objEntidadesBE.TipCliente

            arrSqlParameter(9) = New SqlParameter()
            arrSqlParameter(9).ParameterName = "@ACTI"
            arrSqlParameter(9).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(9).Value = objEntidadesBE.Actividad

            arrSqlParameter(10) = New SqlParameter()
            arrSqlParameter(10).ParameterName = "@EImp"
            arrSqlParameter(10).SqlDbType = SqlDbType.Int
            arrSqlParameter(10).Value = objEntidadesBE.MovImp

            arrSqlParameter(11) = New SqlParameter()
            arrSqlParameter(11).ParameterName = "@EExp"
            arrSqlParameter(11).SqlDbType = SqlDbType.Int
            arrSqlParameter(11).Value = objEntidadesBE.MovExp

            arrSqlParameter(12) = New SqlParameter()
            arrSqlParameter(12).ParameterName = "@UCOMI"
            arrSqlParameter(12).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(12).Value = objEntidadesBE.UEjeComercialI

            arrSqlParameter(13) = New SqlParameter()
            arrSqlParameter(13).ParameterName = "@UCUSI"
            arrSqlParameter(13).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(13).Value = objEntidadesBE.UCusComercialI

            arrSqlParameter(14) = New SqlParameter()
            arrSqlParameter(14).ParameterName = "@UCOME"
            arrSqlParameter(14).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(14).Value = objEntidadesBE.UEjeComercialE

            arrSqlParameter(15) = New SqlParameter()
            arrSqlParameter(15).ParameterName = "@UCUSE"
            arrSqlParameter(15).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(15).Value = objEntidadesBE.UCusComercialE

            arrSqlParameter(16) = New SqlParameter()
            arrSqlParameter(16).ParameterName = "@OFPR"
            arrSqlParameter(16).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(16).Value = objEntidadesBE.Direccion

            arrSqlParameter(17) = New SqlParameter()
            arrSqlParameter(17).ParameterName = "@PAIS"
            arrSqlParameter(17).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(17).Value = objEntidadesBE.Pais

            arrSqlParameter(18) = New SqlParameter()
            arrSqlParameter(18).ParameterName = "@DPTO"
            arrSqlParameter(18).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(18).Value = objEntidadesBE.Dpto

            arrSqlParameter(19) = New SqlParameter()
            arrSqlParameter(19).ParameterName = "@PROV"
            arrSqlParameter(19).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(19).Value = objEntidadesBE.Prov

            arrSqlParameter(20) = New SqlParameter()
            arrSqlParameter(20).ParameterName = "@TELF"
            arrSqlParameter(20).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(20).Value = objEntidadesBE.Telf

            arrSqlParameter(21) = New SqlParameter()
            arrSqlParameter(21).ParameterName = "@TFAX"
            arrSqlParameter(21).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(21).Value = objEntidadesBE.Fax

            arrSqlParameter(22) = New SqlParameter()
            arrSqlParameter(22).ParameterName = "@DFIS"
            arrSqlParameter(22).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(22).Value = objEntidadesBE.DFiscal

            arrSqlParameter(23) = New SqlParameter()
            arrSqlParameter(23).ParameterName = "@FIAC"
            arrSqlParameter(23).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(23).Value = objEntidadesBE.FIniActividad

            arrSqlParameter(24) = New SqlParameter()
            arrSqlParameter(24).ParameterName = "@CDOM"
            arrSqlParameter(24).SqlDbType = SqlDbType.Int
            arrSqlParameter(24).Value = objEntidadesBE.CondicioFiscal

            arrSqlParameter(25) = New SqlParameter()
            arrSqlParameter(25).ParameterName = "@PERS"
            arrSqlParameter(25).SqlDbType = SqlDbType.Int
            arrSqlParameter(25).Value = objEntidadesBE.Persona

            arrSqlParameter(26) = New SqlParameter()
            arrSqlParameter(26).ParameterName = "@USU"
            arrSqlParameter(26).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(26).Value = objEntidadesBE.Usuario

            Dim oDatos As New AccesoDatos()

            oDatos.EjecutaSP("up_Entidades_Editar", bExito, sMensaje, arrSqlParameter)

            Return bExito

        Catch ex As Exception
            MsgBox(ex.Message, vbCritical, "Error del sistema")
            Return False
            Exit Function
        End Try

    End Function

    Public Function EliminarEntidad(ByVal objEntidadesBE As EntidadesBE, ByRef bExito As Boolean, ByRef sMensaje As String) As Boolean

        Dim arrSqlParameter(1) As SqlParameter

        Try

            arrSqlParameter(0) = New SqlParameter()
            arrSqlParameter(0).ParameterName = "@KENT"
            arrSqlParameter(0).SqlDbType = SqlDbType.VarChar
            arrSqlParameter(0).Value = objEntidadesBE.Codigo


            arrSqlParameter(1) = New SqlParameter()
            arrSqlParameter(1).ParameterName = "@USU"
            arrSqlParameter(1).SqlDbType = SqlDbType.Int
            arrSqlParameter(1).Value = objEntidadesBE.Usuario

            Dim oDatos As New AccesoDatos()

            oDatos.EjecutaSP("up_Entidades_Eliminar", bExito, sMensaje, arrSqlParameter)

            Return bExito

        Catch ex As Exception
            MsgBox(ex.Message, vbCritical, "Error del sistema")
            Return False
            Exit Function
        End Try

    End Function


    Public Function ListaEntidadesModificar(ByVal objEntidadesBE As EntidadesBE) As List(Of EntidadesBE)

        Dim sqlListar As String
        Dim objListaCliente As New List(Of EntidadesBE)
        Dim objCliBE As EntidadesBE = Nothing
        Dim arrSqlParameter(0) As SqlParameter
        Dim ds As DataSet
        Dim dt As DataTable

        Dim objDatos As New AccesoDatos()
        Dim blnExito As Boolean
        Dim strMensaje As String = String.Empty
        Dim intI As Integer = 0

        Try

            sqlListar = "up_Entidades_ListaEntidadModificar"

            arrSqlParameter(0) = New SqlParameter("@Kent", System.Data.SqlDbType.VarChar)
            arrSqlParameter(0).Value = objEntidadesBE.Codigo
            objListaCliente = New List(Of EntidadesBE)()

            ds = objDatos.DevuelveDataSet(sqlListar, blnExito, strMensaje, arrSqlParameter)
            dt = ds.Tables(0)

            If dt.Rows.Count > 0 Then

                While intI < dt.Rows.Count
                    objCliBE = New EntidadesBE()

                    objCliBE.Codigo = dt.Rows(intI).ItemArray(0).ToString
                    objCliBE.Descripcion = dt.Rows(intI).ItemArray(1).ToString
                    objCliBE.NomCom = dt.Rows(intI).ItemArray(2).ToString
                    objCliBE.TDocu = dt.Rows(intI).ItemArray(3).ToString
                    objCliBE.NDocu = dt.Rows(intI).ItemArray(4).ToString
                    objCliBE.FecAni = dt.Rows(intI).ItemArray(5).ToString
                    objCliBE.Extranjero = IIf(dt.Rows(intI).ItemArray(6) = False, 0, 1)
                    objCliBE.Cliente = IIf(dt.Rows(intI).ItemArray(7) = False, 0, 1)
                    objCliBE.Estado = IIf(dt.Rows(intI).ItemArray(8) = False, 0, 1)
                    objCliBE.Observacion = dt.Rows(intI).ItemArray(9).ToString
                    objCliBE.TipCliente = dt.Rows(intI).ItemArray(10).ToString
                    objCliBE.Actividad = dt.Rows(intI).ItemArray(11).ToString
                    objCliBE.MovImp = IIf(dt.Rows(intI).ItemArray(12) = False, 0, 1)
                    objCliBE.MovExp = IIf(dt.Rows(intI).ItemArray(13) = False, 0, 1)
                    objCliBE.UEjeComercialI = dt.Rows(intI).ItemArray(14).ToString
                    objCliBE.UCusComercialI = dt.Rows(intI).ItemArray(15).ToString
                    objCliBE.UEjeComercialE = dt.Rows(intI).ItemArray(16).ToString
                    objCliBE.UCusComercialE = dt.Rows(intI).ItemArray(17).ToString
                    objCliBE.Direccion = dt.Rows(intI).ItemArray(18).ToString
                    objCliBE.Pais = dt.Rows(intI).ItemArray(19).ToString
                    objCliBE.Dpto = dt.Rows(intI).ItemArray(20).ToString
                    objCliBE.Prov = dt.Rows(intI).ItemArray(21).ToString
                    objCliBE.Telf = dt.Rows(intI).ItemArray(22).ToString
                    objCliBE.Fax = dt.Rows(intI).ItemArray(23).ToString
                    objCliBE.DFiscal = dt.Rows(intI).ItemArray(24).ToString
                    objCliBE.FIniActividad = dt.Rows(intI).ItemArray(25).ToString
                    objCliBE.CondicioFiscal = IIf(dt.Rows(intI).ItemArray(26) = False, 0, 1)
                    objCliBE.Persona = IIf(dt.Rows(intI).ItemArray(27) = False, 0, 1)
                    intI = intI + 1

                    objListaCliente.Add(objCliBE)
                End While
            End If
        Catch ex As Exception
            MsgBox(ex.Message, vbCritical, "Error del sistema")
            Return Nothing
            Exit Function
        End Try

        Return objListaCliente
    End Function

End Class
